package com.allen.common.base;

import android.app.Fragment;
import android.os.Bundle;

import com.allen.common.receiver.NetBroadcastReceiver;

import androidx.annotation.Nullable;

/**
 * @author : lifei
 * 创建时间： 19-8-23
 * 更改时间： 19-8-23
 * Email : allen.lee723@qq.com
 * @version :
 * Description： BaseFragment是所有Fragment的基类，把一些公共的方法放到里面，如基础样式设置，权限封装，网络状态监听等
 */
public abstract class BaseFragment extends Fragment implements NetBroadcastReceiver.NetChangeListener {
    public static NetBroadcastReceiver.NetChangeListener netEvent;// 网络状态改变监听事件

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 初始化netEvent
        netEvent = this;

        // 初始化方法
        init();
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        netEvent = null;
    }

    // 抽象 - 初始化方法，可以对控件进行初始化，也可以对数据进行初始化
    protected abstract void init();

    /**
     * 网络状态改变时间监听
     * @param netWorkState true有网络，false无网络
     */
    @Override
    public void onNetChange(boolean netWorkState) {
    }
}
